package com.ruoyi.drone.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 飞手档案对象 drone_user_profile
 * 
 * @author ruoyi
 * @date 2024-01-01
 */
public class DroneUserProfile extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 用户档案ID */
    private Long profileId;

    /** 用户ID（关联sys_user） */
    @Excel(name = "用户ID")
    private Long userId;


    /** 真实姓名 */
    @Excel(name = "真实姓名")
    private String realName;

    /** 年龄 */
    @Excel(name = "年龄")
    private Integer age;

    /** 飞行年限（年） */
    @Excel(name = "飞行年限（年）")
    private Integer flightYears;

    /** 身份证正面照片 */
    @Excel(name = "身份证正面照片")
    private String idCardFront;

    /** 身份证反面照片 */
    @Excel(name = "身份证反面照片")
    private String idCardBack;

    /** 手机号码 */
    @Excel(name = "手机号码")
    private String phone;

    /** 邮箱 */
    @Excel(name = "邮箱")
    private String email;

    /** 头像地址 */
    @Excel(name = "头像地址")
    private String avatar;

    /** 地址 */
    @Excel(name = "地址")
    private String address;

    /** 紧急联系人 */
    @Excel(name = "紧急联系人")
    private String emergencyContact;

    /** 紧急联系人电话 */
    @Excel(name = "紧急联系人电话")
    private String emergencyPhone;

    /** 探险信息照片 */
    @Excel(name = "探险信息照片")
    private String explorationInfo;

    /** 个人资质照片 */
    @Excel(name = "个人资质照片")
    private String qualification;

    /** 状态（0待审核 1已通过 2已拒绝 3已停用） */
    @Excel(name = "状态", readConverterExp = "0=待审核,1=已通过,2=已拒绝,3=已停用")
    private String status;

    /** 审核原因 */
    @Excel(name = "审核原因")
    private String auditReason;

    /** 审核时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "审核时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date auditTime;

    /** 审核人 */
    @Excel(name = "审核人")
    private String auditBy;

    public void setProfileId(Long profileId) 
    {
        this.profileId = profileId;
    }

    public Long getProfileId() 
    {
        return profileId;
    }
    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }
    public void setRealName(String realName) 
    {
        this.realName = realName;
    }

    public String getRealName() 
    {
        return realName;
    }
    public void setAge(Integer age)
    {
        this.age = age;
    }

    public Integer getAge()
    {
        return age;
    }

    public void setFlightYears(Integer flightYears)
    {
        this.flightYears = flightYears;
    }

    public Integer getFlightYears()
    {
        return flightYears;
    }
    public void setPhone(String phone) 
    {
        this.phone = phone;
    }

    public String getPhone() 
    {
        return phone;
    }

    public void setEmail(String email) 
    {
        this.email = email;
    }

    public String getEmail() 
    {
        return email;
    }
    public void setAvatar(String avatar) 
    {
        this.avatar = avatar;
    }

    public String getAvatar() 
    {
        return avatar;
    }
    public void setAddress(String address) 
    {
        this.address = address;
    }

    public String getAddress() 
    {
        return address;
    }
    public void setEmergencyContact(String emergencyContact) 
    {
        this.emergencyContact = emergencyContact;
    }

    public String getEmergencyContact() 
    {
        return emergencyContact;
    }
    public void setEmergencyPhone(String emergencyPhone) 
    {
        this.emergencyPhone = emergencyPhone;
    }

    public String getEmergencyPhone() 
    {
        return emergencyPhone;
    }

    public String getIdCardFront() 
    {
        return idCardFront;
    }

    public void setIdCardFront(String idCardFront) 
    {
        this.idCardFront = idCardFront;
    }

    public String getIdCardBack() 
    {
        return idCardBack;
    }

    public void setIdCardBack(String idCardBack) 
    {
        this.idCardBack = idCardBack;
    }

    public String getExplorationInfo() 
    {
        return explorationInfo;
    }

    public void setExplorationInfo(String explorationInfo) 
    {
        this.explorationInfo = explorationInfo;
    }

    public String getQualification() 
    {
        return qualification;
    }

    public void setQualification(String qualification) 
    {
        this.qualification = qualification;
    }

    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setAuditReason(String auditReason) 
    {
        this.auditReason = auditReason;
    }

    public String getAuditReason() 
    {
        return auditReason;
    }
    public void setAuditTime(Date auditTime) 
    {
        this.auditTime = auditTime;
    }

    public Date getAuditTime() 
    {
        return auditTime;
    }
    public void setAuditBy(String auditBy) 
    {
        this.auditBy = auditBy;
    }

    public String getAuditBy() 
    {
        return auditBy;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("profileId", getProfileId())
            .append("userId", getUserId())
            .append("realName", getRealName())
            .append("age", getAge())
            .append("flightYears", getFlightYears())
            .append("idCardFront", getIdCardFront())
            .append("idCardBack", getIdCardBack())
            .append("phone", getPhone())
            .append("email", getEmail())
            .append("avatar", getAvatar())
            .append("address", getAddress())
            .append("emergencyContact", getEmergencyContact())
            .append("emergencyPhone", getEmergencyPhone())
            .append("explorationInfo", getExplorationInfo())
            .append("qualification", getQualification())
            .append("status", getStatus())
            .append("auditReason", getAuditReason())
            .append("auditTime", getAuditTime())
            .append("auditBy", getAuditBy())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }


}
